package com.guojiganzhe.subject.domain.convert;

import com.guojiganzhe.subject.domain.entity.SubjectInfoBO;
import com.guojiganzhe.subject.domain.entity.SubjectOptionBO;
import com.guojiganzhe.subject.infra.basic.entity.SubjectBrief;
import com.guojiganzhe.subject.infra.basic.entity.SubjectInfo;
import org.mapstruct.Mapper;
import org.mapstruct.factory.Mappers;

import java.util.List;

@Mapper
public interface BriefSubjectConverter {
    BriefSubjectConverter INSTANCE = Mappers.getMapper(BriefSubjectConverter.class);

    SubjectInfo convertBoToInfo(SubjectInfoBO subjectInfoBO);
    SubjectInfoBO convertOptionBoAndInfoBOToInfoBO(SubjectOptionBO subjectOptionBO,  SubjectInfo subjectInfo);

    List<SubjectInfoBO> convertInfoListToBoList(List<SubjectInfo> subjectInfoList);

    SubjectBrief convertBoToEntity(SubjectInfoBO subjectInfoBO);
}
